home *** CD-ROM | disk | FTP | other *** search
/ Amiga Format CD 24 / Amiga Format AFCD24 (Feb 1998, Issue 108).iso / -in_the_mag- / emulation / amiga / uae-0.7.0b2 / src / sd-solaris / sound.h < prev   
C/C++ Source or Header  |  1998-01-20  |  914b  |  36 lines

  1.  /* 
  2.   * UAE - The Un*x Amiga Emulator
  3.   * 
  4.   * Support for Solaris sound
  5.   * 
  6.   * Copyright 1996, 1997 Manfred Thole
  7.   */
  8.  
  9. extern uae_u16 sndbuffer[];
  10. extern uae_u16 *sndbufpt;
  11. extern int sound_fd;
  12. extern int sndbufsize;
  13.  
  14. static __inline__ void flush_sound_buffer (void)
  15. {
  16.     write (sound_fd, sndbuffer, sndbufsize);
  17.     sndbufpt = sndbuffer;
  18. }
  19.  
  20. static __inline__ void check_sound_buffers (void)
  21. {
  22.     if ((char *)sndbufpt - (char *)sndbuffer >= sndbufsize) {
  23.     flush_sound_buffer();
  24.     }
  25. }
  26.  
  27. #define PUT_SOUND_BYTE(b) do { *(uae_u8 *)sndbufpt = b; sndbufpt = (uae_u16 *)(((uae_u8 *)sndbufpt) + 1); } while (0)
  28. #define PUT_SOUND_WORD(b) do { *(uae_u16 *)sndbufpt = b; sndbufpt = (uae_u16 *)(((uae_u8 *)sndbufpt) + 2); } while (0)
  29. #define SOUND16_BASE_VAL 0
  30. #define SOUND8_BASE_VAL 128
  31.  
  32. #define DEFAULT_SOUND_MAXB 8192
  33. #define DEFAULT_SOUND_MINB 8192
  34. #define DEFAULT_SOUND_BITS 16
  35. #define DEFAULT_SOUND_FREQ 44100
  36.